/**
 * 
 */
package com.otrace.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.otrace.forms.ConnectForm;
import com.sun.jdi.VirtualMachine;

/**
 * @author Prabhu KVN
 *
 */
public class DisConnectAction extends Action {

	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		// TODO Auto-generated method stub
		boolean success = false;
		ConnectForm connectForm = (ConnectForm)form;
		HttpSession session = request.getSession(false);
		 VirtualMachine jvm = (VirtualMachine)session.getValue("JVM");
		 if(jvm!=null){
			 jvm.dispose();
			 connectForm.setConnStatus("Not Connected");
			 session.removeValue("JVM");
			 
			 success = true;
		 }else{
			 success = true;
		 }
		
		if(success){
			return mapping.findForward("success");
		}else{
			return mapping.getInputForward();
		}
	}
}
